package controlador;

import vista.Menu.*;

public class ControladorMenu {
	
	private VistaJuego unaVistaJuego;
	private boolean menuAbierto;
	private VistaMenu menu;
	
	ControladorMenu(VistaJuego vistaJuego)
	{
		unaVistaJuego = vistaJuego;
		menuAbierto = false;
	}

	
	public void mostrarMenuPrincipal()
	{
		menu = new MenuPrincipal(0,0,this);
		
	}
	
	public void mostrarMenuCambioDeNivel()
	{
		menu = new MenuNuevoNivel(0,0,this);
	}
	
	public void mostrarMenuGameOver()
	{
		menu = new MenuGameOver(0,0,this);
	}


	public boolean hayMenuAbierto() {
		return menuAbierto;
	}

	public VistaMenu getMenu()
	{
		if(unaVistaJuego.getNivel() == null)
		{
			mostrarMenuPrincipal();
		}
	
		else if( unaVistaJuego.getNivel().ganaste())
		{
			mostrarMenuCambioDeNivel();

		}else if(unaVistaJuego.getNivel().perdiste())
		{
			mostrarMenuGameOver();
		}
		
		this.abrirMenu();
		return this.menu;
	}
	
	public void cerrarMenu() {
		unaVistaJuego.nuevoNivel();
		this.menuAbierto = false;
	}
	
	public void abrirMenu() {
		this.menuAbierto = true;
	}
}
